package com.easy.neo4j.entry;

import lombok.Data;
import org.springframework.data.neo4j.core.schema.GeneratedValue;
import org.springframework.data.neo4j.core.schema.Id;
import org.springframework.data.neo4j.core.schema.Node;
import org.springframework.data.neo4j.core.schema.Property;

import java.io.Serializable;
import java.util.Objects;

/**
 * @author: CoolPro
 * @Desc:
 * @create: 2024-02-23 16:38
 **/
@Node(labels = "PowerBike")
@Data
public class PowerBike implements Serializable {
    private static final long serialVersionUID = 4237142993765943980L;
    @Id
    @GeneratedValue
    Long id;
    @Property
    private String isPacket;
    @Property
    private String c_state;
    @Property
    private String c_bikeno;
    @Property
    private String icon;
    @Property
    private String pic;
    @Property
    private String c_bikelat;
    @Property
    private String c_citycode;
    @Property
    private String regionId;
    @Property
    private String imei;
    @Property
    private String isRedBike;
    @Property
    private String bikeModel;
    @Property
    private String power;
    @Property
    private String word;
    @Property
    private String mileage;
    @Property
    private String c_bikelong;
    @Property
    private String bike_plateform;


    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        PowerBike powerBike = (PowerBike) o;
        return Objects.equals(isPacket, powerBike.isPacket) && Objects.equals(c_state, powerBike.c_state) && Objects.equals(c_bikeno, powerBike.c_bikeno) && Objects.equals(icon, powerBike.icon) && Objects.equals(pic, powerBike.pic) && Objects.equals(c_bikelat, powerBike.c_bikelat) && Objects.equals(c_citycode, powerBike.c_citycode) && Objects.equals(regionId, powerBike.regionId) && Objects.equals(imei, powerBike.imei) && Objects.equals(isRedBike, powerBike.isRedBike) && Objects.equals(bikeModel, powerBike.bikeModel) && Objects.equals(power, powerBike.power) && Objects.equals(word, powerBike.word) && Objects.equals(mileage, powerBike.mileage) && Objects.equals(c_bikelong, powerBike.c_bikelong);
    }

    @Override
    public int hashCode() {
        return Objects.hash(isPacket, c_state, c_bikeno, icon, pic, c_bikelat, c_citycode, regionId, imei, isRedBike, bikeModel, power, word, mileage, c_bikelong);
    }

    @Override
    public String toString() {
        return "PowerBike{" +
                "isPacket='" + isPacket + '\'' +
                ", c_state='" + c_state + '\'' +
                ", c_bikeno='" + c_bikeno + '\'' +
                ", icon='" + icon + '\'' +
                ", pic='" + pic + '\'' +
                ", c_bikelat='" + c_bikelat + '\'' +
                ", c_citycode='" + c_citycode + '\'' +
                ", regionId='" + regionId + '\'' +
                ", imei='" + imei + '\'' +
                ", isRedBike='" + isRedBike + '\'' +
                ", bikeModel='" + bikeModel + '\'' +
                ", power='" + power + '\'' +
                ", word='" + word + '\'' +
                ", mileage='" + mileage + '\'' +
                ", c_bikelong='" + c_bikelong + '\'' +
                '}';
    }

    public PowerBike(String isPacket, String c_state, String c_bikeno, String icon, String pic, String c_bikelat, String c_citycode, String regionId, String imei, String isRedBike, String bikeModel, String power, String word, String mileage, String c_bikelong,String bike_plateform) {
        this.isPacket = isPacket;
        this.c_state = c_state;
        this.c_bikeno = c_bikeno;
        this.icon = icon;
        this.pic = pic;
        this.c_bikelat = c_bikelat;
        this.c_citycode = c_citycode;
        this.regionId = regionId;
        this.imei = imei;
        this.isRedBike = isRedBike;
        this.bikeModel = bikeModel;
        this.power = power;
        this.word = word;
        this.mileage = mileage;
        this.c_bikelong = c_bikelong;
        this.bike_plateform = bike_plateform;
    }
}
